Power to different nodes or devices such as those on a computer motherboard is often centrally supplied by a power system unit (PSU). The PSU provides power for multiple nodes such as cores that constitute a processing unit on a computer motherboard. Often, another PSU is also connected to supply power to the nodes. In a two power supply system, if one PSU can afford a certain level of power consumption, the overall system may be designed so the total power consumption is below that certain level to avoid system failure if one of the PSUs fails. Generally, each PSU in such a system is configured to have enough power to allow operation of the multiple nodes at normal operation levels when the other PSU fails.
But in some conditions, the single PSU cannot supply enough power to maintain desired system operation. Under such a condition, power consumption of a processor will be limited by controlling the clock speed of the processor or simply limiting the power of the processor to a certain level. There are several known methods to limit power consumption among multiple cores of a processor. One method is to limit power to each node of a processor equally. Although this is simple to implement, the system power allocation is not optimized since nodes that require more power will not receive the necessary power, while unnecessary power may be supplied to nodes that are running below the power limit allocated by this division.
Another known method to insure adequate power is to set a power limitation of each node as dividing the overall power consumption by the number of nodes and arrive at a set power level for each node. The system meets the target power levels by a software algorithm run by the chassis management controller. The controller is limited to the chassis management controller (CMC), but it could be baseboard management controller (BMC) or the controller of PSU. Such a solution is simple to implement, but limits system design and ignores the real power usage of each node. For example, if it is desirable for the system to support a heavy loading Stock Keeping Unit (SKU) and expect system power fully utilized, the equitable distribution will not allow the heavy load to be sufficiently powered.
Thus, there is a need for a system to allow efficient balancing of power between multiple nodes. There is a further need for a system that allows power to be dynamically balanced between nodes in a multi-node system. There is a further need for a system that efficiently distributes surplus power among nodes in a multi-node system to fine tune power distribution.